← Index
NYTProf Performance Profile   
For starman worker -M FindBin --max-requests 50 --workers 2 --user=kohadev-koha --group kohadev-koha --pid /var/run/koha/kohadev/plack.pid --daemonize --access-log /var/log/koha/kohadev/plack.log --error-log /var/log/koha/kohadev/plack-error.log -E deployment --socket /var/run/koha/kohadev/plack.sock /etc/koha/sites/kohadev/plack.psgi
  Run on Fri Jan 8 13:50:58 2016
Reported on Fri Jan 8 13:51:29 2016

Filename(eval 1105)[/usr/share/perl5/Sub/Quote.pm:5]
StatementsExecuted 87042 statements in 120ms
Eval Invoked At/usr/share/perl5/Sub/Quote.pm line 5
Sibling evals1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
300222105ms111msDBIx::Class::Storage::BlockRunner::::newDBIx::Class::Storage::BlockRunner::new
1118µs8µsDBIx::Class::Storage::BlockRunner::::BEGIN@74DBIx::Class::Storage::BlockRunner::BEGIN@74
111100ns100nsSub::Quote::::BEGIN@4.2965 Sub::Quote::BEGIN@4.2965
1110s0sMethod::Generate::Constructor::::BEGIN@10.2966 Method::Generate::Constructor::BEGIN@10.2966
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1{
222µs my $_QUOTED = ${$_[1]->{"\$_QUOTED"}};
31500ns my $_UNQUOTED = ${$_[1]->{"\$_UNQUOTED"}};
42300ns2100ns
# spent 100ns within Sub::Quote::BEGIN@4.2965 which was called: # once (100ns+0s) by Sub::Quote::_clean_eval at line 4
no warnings 'closure';
# spent 100ns making 1 call to Sub::Quote::BEGIN@4.2965 # spent 0s making 1 call to warnings::unimport
5
# spent 111ms (105+5.36) within DBIx::Class::Storage::BlockRunner::new which was called 3002 times, avg 37µs/call: # 3001 times (105ms+5.36ms) by DBIx::Class::Storage::DBI::dbh_do at line 855 of DBIx/Class/Storage/DBI.pm, avg 37µs/call # once (26µs+1µs) by DBIx::Class::Storage::DBI::dbh_do at line 56 of Sub/Defer.pm
sub DBIx::Class::Storage::BlockRunner::new {
6 $_QUOTED if 0;
73001462µs $_UNQUOTED if 0;
8# BEGIN quote_sub PRELUDE
9package Method::Generate::Constructor;
10
# spent 0s within Method::Generate::Constructor::BEGIN@10.2966 which was called: # once (0s+0s) by Sub::Quote::_clean_eval at line 15
BEGIN {
1110s $^H = "2018";
1210s ${^WARNING_BITS} = "\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377\377";
131100ns %^H = (
14 );
151330µs10s}
16# END quote_sub PRELUDE
1730011.53ms my $class = shift;
1830011.37ms $class = ref($class) if ref($class);
1930011.55ms if ($class ne "DBIx::Class::Storage::BlockRunner") {
20 if ($Moo::MAKERS{$class}) {
21 if ($Moo::MAKERS{$class}{constructor}) {
22 return $class->DBIx::Class::Storage::BlockRunner::SUPER::new(@_);
23 }
24 Moo->_constructor_maker_for($class);
25 return $class->new(@_);
26 } elsif ($INC{"Moose.pm"} and my $meta = Class::MOP::get_metaclass_by_name($class)) {
27 return $meta->new_object(
28 $class->can("BUILDARGS") ? $class->BUILDARGS(@_)
29 : $class->Moo::Object::BUILDARGS(@_)
30 );
31 }
32 }
333001744µs my $args;
3430016.74ms if ( scalar @_ == 1 ) {
35 unless ( defined $_[0] && ref $_[0] eq 'HASH' ) {
36 die "Single parameters to new() must be a HASH ref"
37 ." data => ". $_[0] ."\n";
38 }
39 $args = { %{ $_[0] } };
40 }
41 elsif ( @_ % 2 ) {
42 die "The new() method for $class expects a hash reference or a"
43 . " key/value list. You passed an odd number of arguments\n";
44 }
45 else {
4630016.91ms $args = {@_};
47 }
4830017.61ms if (my @missing = grep !exists $args->{$_}, qw(retry_handler storage wrap_txn)) {
49 die "Missing required arguments: ".join(', ', sort @missing);
50 }
5130019.52ms my $new = bless({}, $class);;
5230014.16ms $new->{"max_attempts"} = (
53 exists $args->{"max_attempts"}
54 ? $args->{"max_attempts"}
55 : "20"
56 );
5730011.44ms if (exists $args->{"retry_debug"}) {
58 $new->{"retry_debug"} = $args->{"retry_debug"};
59 }
6030012.07ms if (exists $args->{"retry_handler"}) {
613001789µs do {
6230018.92ms local $Method::Generate::Accessor::CurrentAttribute = {
63 init_arg => "retry_handler",
64 name => "retry_handler",
65 step => "isa check",
66 };
673001831µs my $_error;
68 {
6960022.75ms my $_old_error = $@;
7030013.27ms if (!eval {
7130011.04ms $@ = $_old_error;
7260025.06ms do { local @_ = ($args->{"retry_handler"}); # BEGIN quote_sub PRELUDE
73package DBIx::Class::Storage::BlockRunner;
74
# spent 8µs within DBIx::Class::Storage::BlockRunner::BEGIN@74 which was called: # once (8µs+0s) by Sub::Quote::_clean_eval at line 79
BEGIN {
7511µs $^H = "133090";
761400ns ${^WARNING_BITS} = "UUUUUUUUUUUUUUUUU";
7716µs %^H = (
78 );
791167µs18µs}
# spent 8µs making 1 call to DBIx::Class::Storage::BlockRunner::BEGIN@74
80# END quote_sub PRELUDE
81
82300122.0ms30014.04ms (Scalar::Util::reftype($_[0])||'') eq 'CODE'
# spent 4.04ms making 3001 calls to Scalar::Util::reftype, avg 1µs/call
83 or DBIx::Class::Exception->throw('retry_handler must be a CODE reference')
84 };
8530011.71ms 1;
86 }) {
87 $_error = $@;
88 if (!ref $_error) {
89 $_error = "isa check for \"retry_handler\" failed: ".$_error;
90 }
91 }
9230011.40ms $@ = $_old_error;
93 }
9430012.68ms die $_error if $_error;
95}
96;
9730012.53ms $new->{"retry_handler"} = $args->{"retry_handler"};
98 }
9930012.33ms if (exists $args->{"storage"}) {
100 $new->{"storage"} = $args->{"storage"};
101 }
10230012.12ms if (exists $args->{"wrap_txn"}) {
103 $new->{"wrap_txn"} = $args->{"wrap_txn"};
104 }
105300117.5ms return $new;
106 }
10711µs $$_UNQUOTED = \&DBIx::Class::Storage::BlockRunner::new
108}
10914µs1;
110
111;